package com.itheima.health.service;

import com.itheima.health.entity.PageResult;
import com.itheima.health.entity.QueryPageBean;
import com.itheima.health.pojo.Permission;
import com.itheima.health.pojo.Role;
import java.util.List;


/**
 权限管理接口
 */
public interface CheckRoleService {
     void deleteById(Integer id);

    /**
     * 分页查询
     * @param queryPageBean 前端页面发过来的数据( 当前页码, 每页条数, 查询条件)
     * @return 结果( 总记录数, 当前页要显示的10条检查组数据  )
     */
    PageResult pageQuery(QueryPageBean queryPageBean);

    /**
     * 添加角色
     * @param role 前端页面传递过来的新增检查组的表单数据
     * @param checkitemIds 前端页面传递过来的新增检查组所关联的检查项ID
     */
    void add(Role role, Integer[] checkitemIds);

    /**
     * 基于权限id 查询权限组对象
     * @param id 权限组id
     * @return 检查组对象
     */
    Role findById(Integer id);

    /**
     * 基于角色Id 查询关联的权限id
     * @param id 角色Id
     * @return 多个权限id
     */
    List<Integer> findCheckPermissionByRoleId(Integer id);

    /**
     * 更新权限
     * @param role 前端页面传递过来的新增角色组的表单数据
     * @param checkItemIds 前端页面传递过来的新增角色组所关联的权限项ID
     * @return
     */
    void edit(Role role, Integer[] checkItemIds);

    /**
     * 查询所有检查组信息
     * @return
     */


    List<Role>  findAll();

    List<Permission> findpermissiondAll();
}
